package 设计模式.代理模式.JDK代理;

import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Method;

/**
 * Q房 网  代理的实现过程
 * @author 孔令富  2021/10/22
 */
public class QFang implements InvocationHandler {

    private  Object instance;

    public QFang(Object instance){
        this.instance = instance;
    }

    // 整个代理过程
    @Override
    public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {

        // args 对应了name 第一个字段
        // 修改增强
        args[0] = "Q房网替用户" + args[0]+"交钱";
        return method.invoke(instance,args);
    }
}
